﻿using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using IdentityServer4.Models;

namespace K9Nano.Admin.Identity
{
    public interface IClientAppService
    {
        ValueTask<IReadOnlyList<Client>> GetAllAsync(CancellationToken cancellation);
        Task<Client> FindClientByIdAsync(string clientId, CancellationToken cancellation);
        ValueTask CreateAsync(Client client, CancellationToken cancellation);
        ValueTask DeleteAsync(string clientId, CancellationToken cancellation);
        ValueTask SetEnableAsync(string clientId, bool enable, CancellationToken cancellation);
    }
}